package com.gpframework.module.ctn.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.gpframework.common.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * @ClassName GpReceiptGoodsVo
 * @Author gpframework
 * @Date 2024-01-08
 * @Version 1.0.0
 * @Description 录入订单Vo对象
 */
@Data
@ToString
@EqualsAndHashCode
@NoArgsConstructor
@Accessors(chain = true)
public class GpReceiptGoodsSackExcel {

    private Long id;

    /** 进仓日期 */
    @Excel(name = "进仓日期", dateFormat = "yyyy/MM/dd")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date receiptDate;

    /** 进仓单号 */
    @Excel(name = "进仓单号")
    @ApiModelProperty("进仓单号")
    private String receiptNo;


    /** 供应商名称 */
    @Excel(name = "供应商")
    @ApiModelProperty("供应商名称")
    private String supplier;

    /** 供应商号码 */
    @Excel(name = "供应商号码")
    @ApiModelProperty("供应商号码")
    private String supplierTel;

    /** 客户名 */
    @Excel(name = "客户名")
    @ApiModelProperty("客户名")
    private String customer;

    /** 客户电话号码 */
    @Excel(name = "客户号码")
    @ApiModelProperty("客户电话号码")
    private String customerTel;

    /** 货物描述 */
    @Excel(name = "货物描述")
    @ApiModelProperty("货物描述")
    private String goodsDescription;

    /** 入仓件数 */
    @Excel(name = "入仓数量")
    @ApiModelProperty("入仓件数")
    private Long warehousedNum;


    /** 单位 */
    @Excel(name = "单位")
    @ApiModelProperty("单位")
    private String unit;

    /** 方cbm */
    @Excel(name = "CBM")
    @ApiModelProperty("方cbm")
    private BigDecimal cbm;



    /** 散货重量（KG） */
    @Excel(name = "散货重量")
    @ApiModelProperty("散货重量（KG）")
    private BigDecimal sackWeight;


    /** 走柜日 */
    @Excel(name = "走柜日")
    @ApiModelProperty("走柜日")
    private Date loadedDate;


    /** 备注 */
    @Excel(name = "备注")
    @ApiModelProperty("备注")
    private String remarks;

    /** 散货仓库 */
    @Excel(name = "仓库")
    @ApiModelProperty("仓库")
    private String packWarehouse;

    /** 目的港 */
    @Excel(name = "目的港")
    private String destination;

    /** 清关公司名称 */
    @Excel(name = "清关公司名称")
    private String agentCompany;




    /** 0打包、1散货、2待定 */
    private String compressOrSack;


    /**
     * 下标
     */
    @ApiModelProperty("下标")
    private int subscript;

    /**
     * 导入提示
     */
    @ApiModelProperty("导入提示")
    private String msg;

    public static List<GpReceiptGoodsSackExcel> list() {
        List<GpReceiptGoodsSackExcel> list = new ArrayList<>();
        list.add(new GpReceiptGoodsSackExcel());
        return list;
    }
}
